Aspects of the disclosure relate to computing technologies. In particular, aspects of the disclosure relate to mobile computing device technologies, such as systems, methods, apparatuses, and computer-readable media for providing a robust Random Number Generator (RNG) and/or Physical Unclonable Functions (PUF).
In many instances, security and cryptographic strength of an operating environment depends on the entropy associated with the randomness used in the cryptographic algorithms and security protocols. To meet the cryptographic assurance and capabilities high entropy Random Number Generators (RNG) and Physical Unclonable Functions (PUF) are desirable.
Providing high entropy and quality RNG and PUF functionality in software is difficult. The problem of providing one or more high entropy and secure RNG and PUF in a secure container implemented in software is exasperated by the isolation properties in a virtualized environment. For example, a secure container implemented as a virtualized sandbox may virtualize all hardware resources obfuscating many sources of entropy and create a highly predictable (nonrandom) environment. Furthermore, the operating environment that the secure container is implemented in, if malicious, may spoof the entropy sources to significantly weaken the cryptographic routines and security protocols associated with the secure container.
Embodiments of the invention address these and other problems.